iT邦幫忙

2022 iThome 鐵人賽

DAY 3
0
自我挑戰組

C# 和 SQL 探索之路系列 第 3

Day 3: C# 關鍵字: is

  • 分享至 

  • xImage
  •  

嗨,今天要講的是也很常見到的關鍵字: is

is 用於檢查某個變數是否相容於某個類別 (或型別)。

下面是微軟的官方範例,展示了 Nullable 的 int 型別變數、被封裝成 objectint 變數,使用 is 判斷,都能正確識別是 int。在 C# 7.0 中,當判斷是 int 時,能用 Declaration Pattern 直接宣告為變數 ab

int i = 23;
object iBoxed = i;
int? jNullable = 7;
if (iBoxed is int a && jNullable is int b)
{
    Console.WriteLine(a + b);  // 輸出 30
}

除此之外,也可以用來檢查某個變數是不是 null,而在 C# 9.0 以後,還可以加入 not 做反向檢查 (套用 Negation Pattern):

if (a is null)
{
// ……
}

if (a is not null)
{
// ……
}

is 還有幾種在新版本 C# 可辨識的 pattern,請查閱以下的參考資料。

參考資料:


上一篇
Day 2: C# 關鍵字: read only 和 const
下一篇
Day 4: C# 關鍵字: ?
系列文
C# 和 SQL 探索之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言